#!/usr/bin/env python
# -*- coding: utf-8 -*-


d = {}
globals()["test"] = d

def calculEchelle(info_plan,type_plan):
    """
    Cette fonction calcule la proportion entre la taille donnee pour le batiment/la salle en cetimetres
    et la correspondance en pixels de l'image, afin de placer les rounds aux bons endroits
    Les tout est stocke dans un tableau
    """
    for element in info_plan.keys():
        if str(element) == type_plan:            
            globals()["test"]["circuit"] = info_plan[element]['url_plan']
            globals()["test"]["h_reel"] = float(info_plan[element]['realheight'])
            globals()["test"]["w_reel"] = float(info_plan[element]['realwidth'])
            globals()["test"]["h_img"] = float(info_plan[element]['previousheight'])
            globals()["test"]["w_img"] = float(info_plan[element]['previouswidth'])
            globals()["test"]["h_ico"] = float(info_plan[element]['nextheight'])
            globals()["test"]["w_ico"] = float(info_plan[element]['nextwidth'])
            globals()["test"]["x"] = info_plan[element]['x']
            globals()["test"]["y"] = info_plan[element]['y']
            globals()["test"]["ratio1"] = (globals()["test"]["h_img"]) / (globals()["test"]["h_reel"])
            globals()["test"]["ratio2"] = (globals()["test"]["w_img"]) / (globals()["test"]["w_reel"])
            #globals()["test"]["ratio3"] = (globals()["test"]["h_ico"]) / (globals()["test"]["h_reel"])
            #globals()["test"]["ratio2"] = (globals()["test"]["h_img"]) / (globals()["test"]["h_ico"])

    #print "ratio reel/icone pour h, 1 pixel = ", 1/globals()["test"]["ratio3"], "centimètres"
    #print "ratio icone/reel pour h, 1 centimètre = ", (globals()["test"]["ratio3"]), "pixels"
    #print "ratio reel/image pour h, 1 pixel = ", 1/globals()["test"]["ratio1"], "centimètres"
    #print "ratio reel/image pour h, 1 centimètre = ", globals()["test"]["ratio1"], "pixels"
    #print "ratio image/icone pour h, 1 pixel = ", globals()["test"]["ratio2"], "pixels"

    return globals()["test"]["ratio1"]

def calculPoints(pas):
    """
    Cette fonction stocke dans un dictionnaire les coordonnes des points sur la carte
    Et son statut... Il parait - Ne prepare que l'entree dans le dico sans remplir ?
    """
    stepx = 0
    stepy = 0
    # ratio pour transformer les metres en pixels    
    rh = (globals()["test"]["ratio1"])
    rw = (globals()["test"]["ratio2"])

    # liste des différents points de mesure
    points = []

    # listes de la taille des dimensions réelles du batiment ou de la salle
    x = range(int(globals()["test"]["w_reel"]))
    y = range(int(globals()["test"]["h_reel"]))

    # pour chaque point de mesure, en fonction du pas, ajout d'un dictionnaire avec les coordonnées de la mesure et son status
    #Modif SC: on demarre le pas a 0
    for i in x[pas::pas]:
        stepy = 0
        stepx = stepx + pas
        for j in y[pas::pas]:
            stepy = stepy + pas
            points.append({'x':int(i*rw),'y':int(j*rh),'x_step':stepx,'y_step':stepy ,'shape':'vide', 'signal':''})

    
    #print "valeurs tableau : ", len(points)
    #print "nb de pas : ",((int(globals()["test"]["h_reel"]))/pas)*(int((globals()["test"]["w_reel"]))/pas)

    return points


    
